package org.jeecg.modules.common.service;

import org.jeecg.modules.system.announcement.entity.BikeAnnouncement;
import org.jeecg.modules.utils.BikeResult;

import java.util.Date;
import java.util.List;

public interface CommonMethodService {
    /**
     * 根据 借还时间 计算费用
     */
    String getCost(Date pickTime, Date stopTime);

    /**
     * 获取车桩或网点最新版本
     * @param appCode
     * 100001 用户端android
     * 100002 用户端IOS
     * 100003 运维端android
     * 100004 硬件网点
     * 100005 硬件车桩
     * */
    byte[] getNewEdition(String appCode);
    /**
     *校验车桩编号
     * */
    BikeResult checkPileCode(String pileCode);

    void updateIdCard();
    /**
     * 获取指定区域的所有最下级区域 id
     * */
    List<String> getChildArea(String id);
    /**
     * 获取指定区域下级网点 id
     * */
    List<String> getChildStation(String id);
    /**
     * 付款短信提示
     * */
    void paySMS(String phone,String message);
    /**
     * 返回付款短信内容
     * */
    String getPaySms(String cost);
    /**
     * 付款系统消息
     * */
    void paySysMessage(BikeAnnouncement bikeAnnouncement);

    /**
     * 新增个人系统消息
     * @param  userId 用户id
     * @param  phone 手机号=账号
     * @param  title 标题
     * @param  msg 内容
     * */
    void addSysMessages(String userId, String phone, String title,String msg);

    /**
     * 根据消息模板编号 获取模板内容
     * */
    String getMessageTemplateByCode(String code);

}
